The present disclosure relates generally to information handling systems, and more particularly to a method and apparatus for testing physical memory in an information handling system under conventional operating systems.
As the value and use of information continues to increase, individuals and businesses seek additional ways to process and store information. One option available to users is information handling systems. An information handling system generally processes, compiles, stores, and/or communicates information or data for business, personal, or other purposes thereby allowing users to take advantage of the value of the information. Because technology and information handling needs and requirements vary between different users or applications, information handling systems may also vary regarding what information is handled, how the information is handled, how much information is processed, stored, or communicated, and how quickly and efficiently the information may be processed, stored, or communicated. The variations in information handling systems allow for information handling systems to be general or configured for a specific user or specific use such as financial transaction processing, airline reservations, enterprise data storage, or global communications. In addition, information handling systems may include a variety of hardware and software components that may be configured to process, store, and communicate information and may include one or more computer systems, data storage systems, and networking systems.
In conjunction with information handling systems, one known memory test algorithm employs a four-step process. The process first finds out the size of the physical memory, allocates memory space equal to the size of the physical memory, writes a pattern into the allocated memory space, and then verifies the pattern. During verification, an error is called out if there is a mismatch between the pattern written into the allocated memory space and that read from the same.
Testing physical memory of an information handling system as an application while running under an Operating System (OS) is a challenge. This is because the OS memory manager is managing the physical memory. In a typical information handling system, an application has access to virtual memory pages that are in turn mapped to physical memory pages by the memory manager. The set of virtual pages that a process is currently using is called its working set. While an application is active, the memory manager monitors the application's working set and the virtual memory pages that are not being utilized while a number of “n” consecutive clock ticks are being swapped out to disk. This causes a problem when performing a memory test because the process of swapping pages decreases the probability of testing all of the physical memory.
Accordingly, it would be desirable to provide method for testing physical memory absent the disadvantages found in the prior methods discussed above.